/*
 * Modelo.h
 *
 *  Created on: 15/06/2013
 *      Author: pato
 */

#ifndef MODELO_H_
#define MODELO_H_
#include "../Aritmetico/Aritmetico.h"
#include "Contexto.h"
#include "Caracter.h"
#include <map>

class Modelo {
private:
	map<string ,Contexto*>* contextos;
	int orden;
public:
	Modelo(int orden);
	virtual Caracter* buscarCaracter(Aritmetico* compresor,string contexto);
	virtual int ComprimirCaracter(string cadena, Aritmetico* compresor);
	virtual int TerminarCompresion(string cadena, Aritmetico *compresor);
	virtual int AgregarCaracter(Caracter* caracter, string contexto);
	virtual ~Modelo();
};

#endif /* MODELO_H_ */
